package com.atugigu.controller;


import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.CookieValue;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RequestMapping;

import java.util.Date;

/**
 * @author ：HB
 * @date ：Created in 2020/10/29 10:04
 * @description： 自定义转换器的测试
 */
@Controller
@RequestMapping("/user")
public class UserController4 {
    /**
     * http://localhost:8080/springmvc_day02_01_response/user/testDateConverter
     *
     * @return
     */
    @RequestMapping("/testDateConverter")
    public String testDateConverter(Date date) {
        System.out.println("date = " + date);
        return "success";

    }

    /**
     *  获得Servlet相关API
     */

    /**
     * http://localhost:8080/springmvc_day02_01_response/user/testRequestHeader
     * 获得请求头:可以获取请求头中的所有信息
     * 相当于web阶段学习的request.getHeader(name)
     * @RequestHeader("Cookie") String cookie:表示将请求头中的Cookie值 与方法的参数cookie一一映射
     * @RequestHeader注解的属性如下： value：请求头的名称
     * required：是否必须携带此请求头
     */
    @RequestMapping("/testRequestHeader")
    public String testRequestHeader(@RequestHeader("Cookie") String cookie) {
        System.out.println("cookie = " + cookie);
        return "success";
    }

    /**
     * @CookieValue 使用@CookieValue可以获得指定Cookie的值
     * @CookieValue注解的属性如下： value：指定cookie的名称
     * required：是否必须携带此cookie
     *
     * http://localhost:8080/springmvc_day02_01_response/user/testCookieValue
     */
    @RequestMapping("/testCookieValue")
    public String testCookieValue(@CookieValue("JSESSIONID") String id) {
        System.out.println("id = " + id);
        return "success";
    }
}
